/**
 * 
 * 
 *  
 *====================================================
 * 文件名称: BaseService.java
 * 修订记录：
 * No    日期				作者(操作:具体内容)
 * 1.    2009-3-19			
 *
 *====================================================
 * 类描述：(说明未实现或其它不应生成javadoc的内容)
 * 
 */
package com.devframe.sysbase.service;

import java.util.HashMap;
import java.util.Map;

import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;

import com.devframe.sysbase.dao.BaseDao;


/**
 * 
 *<pre><b><font color="blue">BaseService</font></b></pre>
 *
 *<pre><b>&nbsp;--业务逻辑基类--</b></pre>
 * <pre>提供基础DAO注入方法，常用逻辑判断函数等。
 * <pre>
 * <b>--样例--</b>
 *   
 * </pre>
 * JDK版本：JDK1.4
 * @author  <b></b>
 */
public abstract class BaseService {
	
    /**
     * logger
     */
    protected Logger logger = Logger.getLogger(getClass());

    /**
     * 基础DAO对象，统一注入，子类可以直接使用
     * baseDao
     */
    @Autowired
    @Qualifier(value="baseDao")
    private BaseDao baseDao;
    
    protected BaseDao getBaseDao() {
		return baseDao;
	}

	protected void setBaseDao(BaseDao baseDao) {
        this.baseDao = baseDao;
    }

    /**
     * 方便子类中判断值是否为空
     * 
     * @param value
     *            value
     * @return true if not Empty
     * @author:
     */
    public boolean notEmpty(String value) {
        return !isEmpty(value);
    }

    /**
     * 方便子类中判断值是否为空
     * 
     * @param value
     *            value
     * @return true if Empty
     * @author:
     */
    public boolean isEmpty(String value) {
        if (value == null || "".equals(value)) {
            return true;
        }
        return false;
    }

    /**
     * 方便子类中判断值是否为空
     * 
     * @param value
     *            value
     * @param trim
     *            true/false
     * @return true if Empty
     * @author:
     */
    public boolean isEmpty(String value, boolean trim) {
        if (value == null || "".equals(value)) {
            return true;
        }
        if (trim) {
            return value.matches("\\s");
        } else {
            return false;
        }
    }
    
    protected Map<String, Object> createParams(String key,Object param){
    	Map<String, Object> params = new HashMap<String, Object>();
		params.put(key, param);
		return params;
    }

}
